case class Stream[E](h: E, t: Stream[E])